It is known to arrange information management systems with various software applications. For example, ORACLE software applications are available from Oracle International Corporation, a Corporation of the State of California, 500 Oracle Parkway, Redwood City, Calif. 94065.
NOTE: The term “ORACLE” is a trademark of the aforementioned Oracle International Corporation.
It is also known that software suppliers commonly provide software patches for installation in their software applications. For example, the foregoing Oracle International Corporation commonly provides ORACLE software patches for installation in its ORACLE software applications.
A patch detection notification process for use in an information management system is known.
For example, referring now to FIG. 1, there is depicted an information management system 100 suitable for demonstrating a patch detection notification process. As shown, there are provided one or more application servers 10.
The application servers 10, in turn, include one or more software applications, the foregoing one or more applications being depicted in FIG. 1 by the reference numbers 30, 30′.
Still referring to FIG. 1, in one embodiment the one or more applications 30, 30′ comprise only one (1) application.
In another embodiment, the one or more applications 30, 30′ comprise a plurality (n) of applications, where “n” is an integer equal to or greater than 2; thus n equals 2, 3, 4, 5, 6, 7, or a greater value.
Still referring to the application servers 10, there are also included therein one or more corresponding sets of objects of interest, the foregoing sets of objects of interest being depicted by reference numbers 50, 50′.
For each of the applications 30, 30′ there is a corresponding set of object of interest 50, 50′. For example, in the particular embodiment depicted in FIG. 1, the set of objects of interest 50 corresponds to the application 30, and the set of objects of interest 50′ corresponds to the application 30′.
As shown, the application servers 10 are arranged to receive a software patch 1 by means of a communication link or path 91.
Referring still to FIG. 1, the patch detection notification process is arranged to provide patch detection notification 3 to the one or more parties of interest 60 EPD Team 60 by means of the communication link or path 92.
In one embodiment, the parties 60 comprise an Enterprise Platform Delivery (“EPD”) Team, which Enterprise Platform Delivery Team is hereinafter referred to simply as an “EPD” Team.
Referring now to FIG. 2, the patch detection notification process comprises the depicted eight (8) steps respectively labeled 209, 211, 213, 215, 217, 219, 221 and 223.
Still referring to FIG. 2, with cross-reference to FIG. 1, the patch detection notification process now is described.
The patch detection notification process begins at step 209. In step 209 the application server 10 receives a patch 1 that is intended for a particular target application 30, 30′ that is comprised in the application server 10.
Referring back to FIG. 1, for good understanding, in step 209 the patch 1 is provided by a patch supplier 80 and is communicated to the application server 10 by means of the communication link or path 1.
Returning again to FIG. 2, after step 209, the process goes to step 211.
In step 211 the process identifies the particular set of objects of interest 50, 50′ which correspond to the target application 30, 30′ from amongst the sets of objects of interest 50, 50′ that are stored in the application server 10, thus forming an identified set of objects of interest 50, 50′.
Referring back to FIG. 1, for good understanding, when the received patch 1 is intended for the target application 30, step 211 identifies the corresponding set of objects of interest 50, thus forming the identified set of objects of interest 50. Conversely, when the received patch 1 is intended for the target application 30′, step 211 identifies the corresponding set of objects of interest 50′, thus forming the identified set of objects of interest 50′.
Returning again to FIG. 2, after step 211 the process goes to step 213.
In step 213, for each object in the identified set of objects of interest 50, 50′, the process determines a corresponding first state in the target application 30, 30′.
Referring back to FIG. 1, for good understanding, when the target application is application 30, step 213 determines a first state in application 30 for each object in the identified set of objects of interest 50. Conversely, when the target application is application 30′, step 213 determines a first state in application 30′ for each object in the identified set of objects of interest 50′.
Returning again to FIG. 2, after step 213 the process then goes to step 215.
In step 215, the process installs the patch 1 in the target application 30, 30′.
Referring back to FIG. 1, for good understanding, when the target application is application 30, step 215 installs the patch 1 in application 30. Conversely, when the target application is application 30′, step 215 installs the patch 1 in application 30′.
Returning again to FIG. 2, after step 215 the process goes to step 217.
In step 217, for each object in the identified set of objects of interest 50, 50′, the process determines a corresponding second state in the target application 30, 30′.
Referring back to FIG. 1, for good understanding, when the target application is application 30, step 217 determines a second state in application 30 for each object in the identified set of objects of interest 50. Conversely, when the target application is application 30′, step 217 determines a second state in application 30′ for each object in the identified set of objects of interest 50′.
Returning again to FIG. 2, after step 217 the process goes to step 219.
In step 219, for each object in the identified set of objects of interest 50, 50′, the process compares the each object's corresponding first and second states in the target application 30, 30′.
Referring back to FIG. 1, for good understanding, when the target application is application 30, step 219 compares the first and second states in application 30 for each object in the identified set of objects of interest 50. Conversely, when the target application is application 30′, step 219 compares the first and second states in application 30′ for each object in the identified set of objects of interest 50′.
Returning again to FIG. 2, after step 219 the process goes to step 221.
In step 221, for each object in the identified set of objects of interest 50, 50′, when the each object's first and second states in the target application 30, 30′ differ, the process notifies one or more interested parties 60.
Referring back to FIG. 1, for good understanding, when the target application is application 30, for each object in the identified set of objects of interest 50, step 221 notifies one or more interested parties 60 when the object's first and second states in application 30 are different. Conversely, when the target application is application 30′, for each object in the identified set of objects of interest 50′, step 221 notifies one or more interested parties 60 when the object's first and second states in application 30′ are different.
Still further to step 221, it will be understood that the “one or more interested parties” described in step 221 are depicted in FIG. 1 by the “parties”, reference number 60. In one embodiment, the parties comprise an Enterprise Platform Delivery Team, or EPD Team.
Returning again to FIG. 2, after step 221 the process goes to step 223.
In step 223 the patch detection notification process is done.
Using conventional technology, once a patch is identified and distributed, human intervention is required (more than one person most times) to manually review and inspect the contents of the patch, analyze if the patch “touched” code they are dependent on, and then once the patch is applied, test to see if they are truly impacted. This is a time consuming and error prone process.
Thus, there is a need for the present invention.